home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / COMAL / B-Book Series / (k)b2.d64 / enteroptions < prev    next >
Text File  |  2007-02-28  |  2KB  |  88 lines

  1. 0010 //PROGRAM: ENTEROPTIONS//
  2. 0020 DIM NAME$(15) OF 20, OPTION(15,4)
  3. 0030 DIM SUBJECT$(4) OF 12, N$ OF 20, A$ OF 3
  4. 0040 DIM SPACES$ OF 39
  5. 0050 //
  6. 0060 SPACES$(1:39):=""
  7. 0070 SUBJECT$(1):="BIOLOGY"
  8. 0080 SUBJECT$(2):="GERMAN"
  9. 0090 SUBJECT$(3):="INFORMATICS"
  10. 0100 SUBJECT$(4):="MUSIC"
  11. 0110 //
  12. 0120 STARTPROGRAM
  13. 0130 PRINT CHR$(147) //CLEAR SCREEN
  14. 0140 REPEAT 
  15. 0150 WINDOW(8,15)
  16. 0160 OK:=FALSE
  17. 0170 PRINT "1 = NEW CLASS"
  18. 0180 PRINT "2 = ENTER INDIVIDUALS"
  19. 0190 PRINT 
  20. 0200 INPUT "> ": JOB
  21. 0210 CASE JOB OF
  22. 0220 WHEN 1
  23. 0230 WINDOW(8,12)
  24. 0240 INPUT "DO YOU WANT TO DELETE OLD (Y/N)? ": A$
  25. 0250 IF A$="Y" THEN MAX:=0; OK:=TRUE
  26. 0260 WHEN 2
  27. 0270 OK:=TRUE
  28. 0280 ENDCASE 
  29. 0290 UNTIL OK
  30. 0300 GETOPTIONS
  31. 0310 STOPPROGRAM
  32. 0320 //
  33. 0330 PROC GETOPTIONS 
  34. 0340 PRINT CHR$(147) //CLEAR
  35. 0350 WINDOW(8,9)
  36. 0360 INPUT "FIRST STUDENT'S NAME: ": N$
  37. 0370 WHILE NOT (N$="" OR MAX=15) DO
  38. 0380 MAX:=MAX+1
  39. 0390 NAME$(MAX):=N$
  40. 0400 WINDOW(5,5)
  41. 0410 PRINT N$,"'S OPTIONS ARE:"
  42. 0420 FOR J:=1 TO 4 DO
  43. 0430 REPEAT 
  44. 0440 WINDOW(8,10)
  45. 0450 PRINT SUBJECT$(J)," AT LEVEL",
  46. 0460 INPUT ": ": LEVEL
  47. 0470 UNTIL LEVEL=-1 OR LEVEL=1 OR LEVEL=2
  48. 0480 OPTION(MAX,J):=LEVEL
  49. 0490 ENDFOR J
  50. 0500 PRINT CHR$(147) //CLEAR
  51. 0510 WINDOW(8,10)
  52. 0520 INPUT "NEXT STUDENT'S NAME: ": N$
  53. 0530 ENDWHILE 
  54. 0540 ENDPROC GETOPTIONS
  55. 0550 //
  56. 0560 PROC STARTPROGRAM 
  57. 0570 OPEN FILE 2,"OPTIONS",READ
  58. 0580 READ FILE 2: MAX
  59. 0590 FOR I:=1 TO MAX DO
  60. 0600 READ FILE 2: NAME$(I)
  61. 0610 FOR J:=1 TO 4 DO READ FILE 2: OPTION(I,J)
  62. 0620 ENDFOR I
  63. 0630 CLOSE
  64. 0640 ENDPROC STARTPROGRAM
  65. 0650 //
  66. 0660 PROC STOPPROGRAM 
  67. 0670 OPEN FILE 3,"@0:OPTIONS",WRITE
  68. 0680 WRITE FILE 3: MAX
  69. 0690 FOR I:=1 TO MAX DO
  70. 0700 WRITE FILE 3: NAME$(I)
  71. 0710 FOR J:=1 TO 4 DO WRITE FILE 3: OPTION(I,J)
  72. 0720 ENDFOR I
  73. 0730 CLOSE FILE 3
  74. 0740 ENDPROC STOPPROGRAM
  75. 0750 //
  76. 0760 PROC WINDOW(X,Y) 
  77. 0780 SCREEN(X,1)
  78. 0790 FOR I:=1 TO Y-X+1 DO PRINT SPACES$
  79. 0800 SCREEN(X,1)
  80. 0810 ENDPROC WINDOW
  81. 0820 //
  82. 0830 PROC SCREEN(ROW,COL) CLOSED
  83. 0840 PRINT CHR$(19), //HOME
  84. 0850 FOR I:=1 TO ROW DO PRINT  //DOWN
  85. 0860 FOR I:=1 TO COL-1 DO PRINT CHR$(29), //RIGHT
  86. 0870 ENDPROC SCREEN
  87. 0880 //
  88.